nptel programming in java assignment solutions